// Initial File - Paul Jack

#ifndef _WORKERTHREADS_H_
#define _WORKERTHREADS_H_

#include "workerinterface.h"
class AsyncMgrBase;
/////////////////////////////////////////////////////////////////////////////
// ReadThread
/////////////////////////////////////////////////////////////////////////////
class ReadThread : public WorkerInterface
{
public:
    ReadThread(AsyncMgrBase *);
    bool work();
    void initialize();

private:
    AsyncMgrBase *mAsyncMgr;

};




/////////////////////////////////////////////////////////////////////////////
// ReadBulkThread
/////////////////////////////////////////////////////////////////////////////

class ReadBulkThread : public WorkerInterface
{
public:
    ReadBulkThread(AsyncMgrBase *);
    bool work();
    void initialize();

private:
    AsyncMgrBase *mAsyncMgr;
};



/////////////////////////////////////////////////////////////////////////////
// WriteThread
/////////////////////////////////////////////////////////////////////////////

class WriteThread: public WorkerInterface
{
public:
    WriteThread(AsyncMgrBase *);
    bool work();

private:
    AsyncMgrBase *mAsyncMgr;
    void initialize();

};



#endif //_WORKERTHREADS_H_
